import { repeat, diff, intersect, union, complement, complement2 } from './tools';
// repeat  对象数组去重
const arrObj = [
  { name: '小红', id: 1 },
  { name: '小橙', id: 1 },
  { name: '小黄', id: 4 },
  { name: '小红', id: 3 },
  { name: '小青', id: 1 },
  { name: '小蓝', id: 4 }
];

// console.log(repeat(arrObj, 'id')); //{name: '小红', id: 1},{name: '小黄', id: 4},{name: '小绿', id: 3}

//****************************************************************************************************************/
// diff 差集
const a = [
  { id: 1, name: 'name1' },
  { id: 2, name: 'name2' },
  { id: 9, name: 'name2' },
  { id: 5, name: 'name2' },
  { id: 4, name: 'name4' },
  { id: 3, name: 'name3' }
];

const b = [
  { id: 1, name: 'name1' },
  { id: 3, name: 'name3' },
  { id: 9, name: 'name3' },
  { id: 4, name: 'name4' }
];
// a与b的差集:从a中出去b中相同的数据
// console.log(diff(a, b, 'id')); // { id: 2, name: 'name2' },{id: 5, name: 'name2'}
// console.log(diff(b, a, 'id')); // { id: 3, name: 'name3' }

//****************************************************************************************************************/
// intersect 交集
const a1 = [
  { id: 1, name: 'name1' },
  { id: 2, name: 'name2' },
  { id: 9, name: 'n1me2' },
  { id: 5, name: 'name2' },
  { id: 4, name: 'name4' }
];

const b2 = [
  { id: 1, name: 'name1' },
  { id: 3, name: 'name3' },
  { id: 9, name: 'name3' },
  { id: 5, name: 'name2' },
  { id: 4, name: 'name4' }
];

// console.log('交集', intersect(a1, b2, 'id'));

//****************************************************************************************************************/

// union 并集
// console.log('并集', union(a1, b2, 'id'));

//****************************************************************************************************************/
// complement 补集
// console.log('补集', complement(a1, b2, 'id'));
// console.log('补集2', complement2(a1, b2, 'id'));
